package car.aistar.service;

import car.aistar.dto.BrandAndPrice;
import car.aistar.entity.CarDetail;
import com.github.pagehelper.PageInfo;

import java.util.List;

/**
 * (CarDetail)表服务接口
 *
 * @author makejava
 * @since 2020-10-02 19:05:03
 */
public interface CarDetailService {


    /**
     *@Author 许华钢
     *@Description 管理员页面中对车辆管理分页的全局搜索
     *@Date 7:28 2020/10/8
     *@Param
     *@return
     **/
    List<CarDetail> findAllCarDetail(String search);

    /**
     *@Author 许华钢
     *@Description 管理员页面车辆管理分页
     *@Date 7:32 2020/10/8
     *@Param [pageNow, pageSize]
     *@return com.github.pagehelper.PageInfo<car.aistar.entity.Reserve>
     **/
    PageInfo<CarDetail> findByPageCarDetail(String search, Integer pageNow, Integer pageSize);



    /**
     *@Author 肖相荣
     *@Description //TODO 销售员页面增加车辆详情的分页功能
     *@Date 21:32 2020/10/3
     *@Param [pageNow, pageSize]
     *@return com.github.pagehelper.PageInfo<car.aistar.entity.Reserve>
     **/

    PageInfo<CarDetail> findByPage(Long id, Integer pageNow, Integer pageSize);

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    CarDetail queryById(Long id);

    /**
     * 查询多条数据
     *
     * @param offset 查询起始位置
     * @param limit  查询条数
     * @return 对象列表
     */
    List<CarDetail> queryAllByLimit(int offset, int limit);

    /**
     * 新增数据
     *
     * @param carDetail 实例对象
     * @return 实例对象
     */
    CarDetail insert(CarDetail carDetail);

    /**
     * 修改数据
     *
     * @param carDetail 实例对象
     * @return 实例对象
     */
    CarDetail update(CarDetail carDetail);

    /**
     * 通过主键删除数据
     *
     * @param id 主键
     * @return 是否成功
     */
    boolean deleteById(Long id);

    /**
     *@Author gaara
     *@Description //TODO
     *@Date 14:53 2020/10/2
     *@Param
     *@return
     **/
    List<CarDetail> queryAll(CarDetail carDetail);


    List<String> findCgear();


    List<String> findCpaifang();

    List<String> findCcus();

    List<Integer> findCmileage();

    List<Integer> findCseat();

    List<Integer> findAge();




}